package com.dd.admin.business.memberCard.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 会员卡
 * </p>
 *
 * @author 727869402@qq.com
 * @since 2024-06-19
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("business_member_card")
@ApiModel(value="MemberCard对象", description="会员卡")
public class MemberCard implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "会员卡id")
    @TableId(value = "MEMBER_CARD_ID", type = IdType.ASSIGN_UUID)
    private String memberCardId;

    @ApiModelProperty(value = "会员id")
    @TableField("MEMBER_ID")
    private String memberId;

    @ApiModelProperty(value = "卡项ID")
    @TableField("CARD_ID")
    private String cardId;

    @ApiModelProperty(value = "卡号")
    @TableField("CARD_NO")
    private String cardNo;

    @ApiModelProperty(value = "卡名称")
    @TableField("CARD_NAME")
    private String cardName;

    @ApiModelProperty(value = "余额")
    @TableField("AMOUNT")
    private BigDecimal amount;

    @ApiModelProperty(value = "赠送金额")
    @TableField("GIVE_AMOUNT")
    private BigDecimal giveAmount;

    @ApiModelProperty(value = "商品折扣")
    @TableField("DISCOUNT")
    private BigDecimal discount;

    @ApiModelProperty(value = "开卡金额")
    @TableField("BUILD_CARD_AMOUNT")
    private BigDecimal buildCardAmount;

    @ApiModelProperty(value = "提成比例")
    @TableField("PUSH_MONEY")
    private BigDecimal pushMoney;

    @ApiModelProperty(value = "0正常 1取消")
    @TableField("CARD_STATUS")
    private Integer cardStatus;

    @ApiModelProperty(value = "0正常 1删除")
    @TableField("DELETED")
    @TableLogic
    private Integer deleted;

    @ApiModelProperty(value = "乐观锁字段")
    @TableField("VERSION")
    @Version
    private Long version;

    @ApiModelProperty(value = "门店id")
    @TableField(value = "SHOP_ID", fill = FieldFill.INSERT)
    private String shopId;

    @ApiModelProperty(value = "门店名")
    @TableField(value = "SHOP_NAME", fill = FieldFill.INSERT)
    private String shopName;

    @ApiModelProperty(value = "创建人")
    @TableField(value = "CREATE_NAME", fill = FieldFill.INSERT)
    private String createName;

    @ApiModelProperty(value = "创建时间")
    @TableField(value = "CREATE_TIME", fill = FieldFill.INSERT)
    private Date createTime;

    @ApiModelProperty(value = "创建人id")
    @TableField(value = "CREATE_ID", fill = FieldFill.INSERT)
    private String createId;

    @ApiModelProperty(value = "修改时间")
    @TableField(value = "UPDATE_TIME", fill = FieldFill.UPDATE)
    private Date updateTime;

    @ApiModelProperty(value = "修改人")
    @TableField(value = "UPDATE_NAME", fill = FieldFill.UPDATE)
    private String updateName;

    @ApiModelProperty(value = "修改人id")
    @TableField(value = "UPDATE_ID", fill = FieldFill.UPDATE)
    private String updateId;


}
